Heterogeneous computer system, heterogeneous input/output system and data back-up method for the systems

ABSTRACT

A heterogeneous computer system, a heterogeneous input/output system and a data back-up method for the systems. An I/O subsystem A for open system and an I/O subsystem B for a mainframe are connected by a communication unit. In order to back up the data from at least a disk connected to the I/O subsystem B in a MT library system and in order to permit the mainframe to access the data in the I/O subsystem B, the I/O subsystem A includes a table for assigning a vacant memory address in a local subsystem to the memory of the I/O subsystem for an open system. A request of variable-length record format received from the mainframe is converted into a fixed-length record format for the subsystem B. The disk designated according to the table is accessed, and the data thus obtained is sent to the mainframe and backed up in the back-up system.

BACKGROUND OF THE INVENTION

[0001] The present invention relates to a heterogeneous computer system comprising a host computer and a plurality of I/O subsystems, and more in particular to a method for making it possible to back up the data stored in a memory between a host computer and an I/O subsystem which cannot be directly connected due to the difference in access interface, and a heterogeneous computer system including a plurality of I/O subsystems having different access interfaces connected to the system and the host computer.

[0002] In mainframes, a large scale of memory hierarchy (storage hierarchy) including a combination of a plurality of external memories having different processing speeds and different storage capacities is accompanied by a satisfactory data management function and an overall storage management function intended to support an optimum data arrangement and an efficient operation. The IBM's DFSMS (Data Facility Storage Management Subsystem) is an example, which is described in detail in “IBM SYSTEMS JOURNAL, Vol. 28, No. 1, 1989, pp. 77-103.

[0003] The disk data of the I/O subsystem of the mainframe computer system having the above-mentioned management function can be backed up in a medium such as a magnetic tape or a magnetic tape library capable of storing a large quantity of data with a low cost per bit.

[0004] An open system such as a personal computer or a work station, unlike the mainframe, is not equipped with a magnetic tape or a magnetic tape library capable of storing a large quantity of data.

[0005] Generally, in an open system such as a personal computer or a work station, a disk is accessed in accordance with a fixed-length record format, while the mainframe accesses a disk in accordance with a variable-length record format called the count key data format.

[0006] As a result, the disk subsystem for the mainframe computer is often configured independently of the disk subsystem for the open system.

[0007] On the other hand, a technique for transmitting and receiving data between I/O subsystems is disclosed in U.S. Pat. No. 5,155,845.

SUMMARY OF THE INVENTION

[0008] In a disk subsystem for an open system and a disk subsystem for a mainframe computer which use different host computers, the back-up and other functions are independently operated and managed.

[0009] In view of the fact that the open system lacks a medium such as a magnetic tape or a magnetic tape library capable of storing a larger quantity of data, as described above, it is effective to back up the data in the I/O subsystem of the mainframe.

[0010] An ordinary disk system for the open system, however, cannot be connected directly to the mainframe due to the difference in the interface thereof.

[0011] U.S. Pat. No. 5,155,845 fails to disclose how to process the read/write operation for a storage system not directly connected with a host computer.

[0012] An object of the present invention is to provide a method and a system for backing up data stored in a memory between a host computer and an I/O subsystem that cannot be connected directly to each other due to the difference in access interface.

[0013] Specifically, an object of the invention is to provide a method and a system for backing up data stored in an I/O subsystem of an open system from a mainframe not directly connected with the I/O subsystem.

[0014] Another object of the invention is to provide a method and a computer system in which a mainframe is capable of accessing a memory of an I/O subsystem of an open system not directly connected with the mainframe.

[0015] Still another object of the invention is to provide a system and a method of access in which two or more I/O subsystems having different interfaces can be connected with a mainframe.

[0016] In order to achieve the above-mentioned objects, according to one aspect of the present invention, there is provided a heterogeneous computer system comprising a first host computer, a first I/O subsystem directly connected to the first host computer by an interface of variable-length record format and including at least one external memory, a second host computer, a second I/O subsystem directly connected to the second host computer by an interface of fixed-length record format and including at least one external memory, and a communication unit for connecting the first I/O subsystem and the second I/O subsystem,

[0017] wherein the first I/O subsystem includes a table for storing a device address of an external memory, data indicating one of the external memory of the first I/O subsystem and the external memory of the second I/O subsystem to which the device address is assigned, and a device address of the external memory in the second I/O subsystem in the case where the device address is assigned to the external memory of the second I/O subsystem, and

[0018] wherein upon receipt of a read/write request conforming with the interface of variable-length record format from the first host computer and including an address of an external memory to be read from or written into, and upon decision, with reference to the table, that the external memory address included in the read/write request is assigned to the external memory included in the second I/O subsystem, the first I/O subsystem converts the read/write request into a second read/write request conforming with the interface of fixed-length record format and sends the second read/write request to the second I/O subsystem.

[0019] According to another aspect of the invention, there is provided a heterogeneous computer system comprising a first host computer, a first I/O subsystem directly connected with the first host computer by an interface of variable-length record format and including at least an external memory, a back-up system connected to the first host computer, a second host computer, a second I/O subsystem directly connected to the second host computer by an interface of fixed-length record format and including at least an external memory, and a communication unit for connecting the first I/O subsystem and the second I/O subsystem,

[0020] wherein the first host computer includes means for issuing to the first I/O subsystem a read request conforming with the interface of variable-length record format and containing the address of an external memory from which data is to be read, and backing up the data received from the first I/O subsystem into the back-up system,

[0021] wherein the first I/O subsystem includes a table for storing the device address of an external memory, data indicating that one of the external memory of the first and the second I/O subsystems to which the device address is assigned, and the device address of the external memory in the second I/O subsystem in the case where the first device address is assigned to the external memory of the second I/O subsystem, and

[0022] wherein upon receipt from the first host computer of a read request conforming with the interface of variable-length record format including an external memory address to be read, and upon decision, with reference to the above-mentioned table, that the device address of the memory address included in the read request is assigned to the external memory included in the second I/O subsystem, the first I/O subsystem converts the read request into a second read request conforming with the fixed-length interface and sends the second read request to the second I/O subsystem while at the same time sending to the first host computer the data received from the second I/O subsystem.

[0023] According to still another aspect of the invention, there is provided a heterogeneous computer system comprising a first host computer, a first I/O subsystem directly connected to the first host computer by an interface of variable-length record format and including at least one external memory, a back-up system connected to the first host computer, a second host computer, a second I/O subsystem directly connected to the second host computer by an interface of fixed-length record format and including at least one external memory, and a communication unit for connecting the first I/O subsystem and the second I/O subsystem,

[0024] wherein the first host computer includes means for issuing to the first I/O subsystem a write request conforming with the interface of variable-length record format including the address of an external memory into which data is to be written, and sending the data read from the back-up system to the first I/O subsystem,

[0025] wherein the first I/O subsystem includes a table containing a device address of the external memory, data indicating one of the external memories of the first and the second I/O subsystems to which the device address is assigned, and a device address of the external memory in the second I/O subsystem in the case where the first device address is assigned to the external memory of the second I/O subsystem, and

[0026] wherein upon receipt from the first host computer of a write request conforming with the interface of variable-length record format including the device address of an external memory to be written into, and upon decision, with reference to the table, that the address of the external memory included in the write request is assigned to the external memory included in the second I/O subsystem, the first I/O subsystem converts the write request into a second write request conforming with the interface of fixed-length record format, sends the second write request to the second I/O subsystem while at the same time sending the data received from the first host computer to the second I/O subsystem.

[0027] According to yet another aspect of the invention, there is provided a heterogeneous I/O system for use with a host computer connected thereto, comprising a first I/O subsystem including at least an external memory, and a second I/O subsystem connected to the first I/O subsystem and including at least an external memory,

[0028] wherein the first I/O subsystem includes a table for storing a device address of an external memory, data indicating one of the external memories of the first and the second I/O subsystems to which the device address is assigned, and a device address of the external memory in the second I/O subsystem in the case where the first device address is assigned to the external memory of the second I/O subsystem,

[0029] wherein upon receipt of a read/write request designating the device address of an external memory to be read from or written into by the host computer, and upon decision, with reference to the table, that the external memory address in the designated address is assigned to the external memory included in the second I/O subsystem, the first I/O subsystem sends the read/write request to the second I/O subsystem.

[0030] According to a further aspect of the invention, there is provided a heterogeneous I/O system for use with a host computer connected thereto, comprising a first I/O subsystem having an interface of variable-length record format and including at least one external memory, a second I/O subsystem having an interface of fixed-length record format and including at least one external memory, and a communication unit for connecting the first I/O subsystem and the second I/O subsystem,

[0031] wherein the first I/O subsystem includes a table for storing a device address of an external memory, data indicating one of the external memories of the first and the second I/O subsystems to which the device address is assigned, and a device address of the external memory in the second I/O subsystem in the case where the first device address is assigned to the external memory of the second I/O subsystem; and

[0032] wherein upon receipt from the host computer of a read/write request conforming with the interface of variable-length record format including the address of an external memory to be read from or written into, and upon decision, with reference to the table, that the external memory address included in the read/write request is assigned to the external memory included in the second I/O subsystem, the first I/O subsystem converts the read/write request into a second read/write request conforming with the interface of fixed-length record format and sends it to the second I/O subsystem.

[0033] According to an embodiment of the invention, there is provided a heterogeneous computer system, wherein an I/O subsystem for an open system is connected with an I/O subsystem for a mainframe by a communication unit, wherein in order to access data in the I/O subsystem for an open system from the mainframe for enabling the data in the disk connected to the I/O subsystem for the open system to be backed up in a MT library system, a table is prepared for assigning a vacant address of the memory in the local subsystem to the memory of the I/O subsystem for the open system, wherein a request of variable-length record format received from the mainframe is converted into a request of fixed-length record format for the open system, wherein the disk designated according to the table is accessed, and wherein the data thus obtained is sent to the mainframe and backed up in the back-up system.

[0034] This configuration can back up the data of an I/O subsystem for an open system in a back-up system under the management of a mainframe not directly connected to the particular I/O subsystem.

BRIEF DESCRIPTION OF THE DRAWINGS

[0035]FIG. 1 is a block diagram showing a configuration of a heterogeneous computer system according to an embodiment of the present invention.

[0036]FIG. 2 is a block diagram showing a configuration of a heterogeneous computer system according to another embodiment of the invention.

[0037]FIG. 3 is a block diagram showing a configuration of a disk controller of the heterogeneous computer system shown in FIGS. 1 and 2.

[0038]FIG. 4 is a diagram showing a configuration of a local controller-connected disk data (table) for the systems shown in FIGS. 1 and 2.

[0039]FIG. 5 is a diagram showing a configuration of a remote controller-connected disk data (table) for the systems shown in FIGS. 1 and 2.

[0040]FIG. 6 is a diagram showing the interconnection of disk devices as viewed from the mainframe.

[0041]FIG. 7 is a diagram showing an example of the processing flow of a disk controller A in the case where the data in an I/O subsystem for an open system is backed up in a MT library system of the mainframe.

[0042]FIG. 8 is a diagram showing an example of the processing flow of a disk controller A in the case where data are restored in an I/O subsystem for an open system from a MT library system of the mainframe.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0043] Embodiments of the invention will be described below with reference to the accompanying drawings.

[0044]FIG. 1 is a diagram showing a configuration of a computer system according to an embodiment of the invention.

[0045] A processing system A 100 includes a mainframe 101, a channel interface A 102, a channel interface B 103, a magnetic tape (MT) controller 106, a magnetic tape library controller 130, a magnetic tape library 107, a disk controller A 104, a disk drive group A 105 and a service processor 109. A back-up processing device 162 and a restore processing device 164 are mounted on the mainframe 101.

[0046] The mainframe 101 accesses the disk controller A 104 through the channel interface B 103 conforming with a variable-length record format called the count-key-data format.

[0047] The count-key-data format is a record format in which a record constituting a unit of read/write operation is configured of three fields including a count field, a key field and a data field.

[0048] A record ID is stored in the count field, a key data for accessing the record is stored in the key field, and the data used by an application program is stored in the data field.

[0049] In the description that follows, the magnetic tape (MT) controller 106, the magnetic tape library controller 130 and the magnetic tape library 107 are collectively referred to as a MT library system 116. The disk controller A 104 and the disk drive group A 105 constitute an I/O subsystem 10 connected to the mainframe 101. In similar fashion, the disk controller B 113 and the disk drive group B 114 constitute an I/O subsystem 20 connected to a host 111 for an open system.

[0050] An optical disk or the like, as well as a magnetic disk, constitutes a rank of storage hierarchy connected through the channel interface. The following description refers to the case in which the MT library system 116 is connected.

[0051] The disk controller A 104 contains local controller-connected disk data 314 and remote controller-connected disk data 315.

[0052] The local controller-connected disk data 314 and the remote controller-connected disk data 315 are data provided for making it possible for the mainframe to access a disk device of the I/O subsystem not directly connected. Specifically, the data 314, 415 are a table for assigning a vacant address of the memory in the local I/O subsystem 10 for the processing system A to the memory of the I/O subsystem for the open system so that the data in the I/O subsystem 20 for the processing system B can be accessed from the mainframe 101. The data 314, 315 will be described in detail later.

[0053] The processing system B 110 includes a host 111 for the open system, a SCSI (small computer system interface) 112, the disk controller B 113, the disk drive group B 114 and a service processor B 115.

[0054] The host 111 for the open system accesses the disk controller B 113 through the SCSI 112 having a fixed-length record which is a unit of read/write operation.

[0055] The disk controller A 104 and the disk controller B 113 are connected by a communication line 108. The communication line 108 can be, for example, a SCSI cable B 117.

[0056] In the description that follows, the count-key-data format will be called the CKD format, and the fixed-length block format a FBA (fixed block architecture) format.

[0057] Also, the record of the CKD format will be referred to as the CKD record, and the record of the FBA format as the FBA record.

[0058]FIG. 2 is a diagram showing another example of a computer system according to the invention, in which a single I/O subsystem for the mainframe is connected with two or more I/O subsystems for an open system.

[0059] In a processing system X 120, the interfaces of an open system host X 121 and a disk controller X 123 are connected to each other by a fiber channel interface 122. The fiber channel interface 122 is an optical fiber cable which can increase the length of connection between a host and a control device.

[0060] In many case, however, a fiber channel interface based on SCSI is employed between a host and a control device.

[0061] Also, an interface like a fiber channel interface X 126 can be used to connect a disk controller X 123 and the disk controller B 113.

[0062] The data back-up system in the configuration of FIG. 2 is an expansion of the data back-up system in the configuration of FIG. 1.

[0063] The fundamental operation of each system is such that the mainframe 101 and the hosts 111, 121 for the open system access the magnetic tape library 107 constituting an external memory or the disk drive group A 105, the disk drive group B 114 and the disk drive group X 124 through each interface.

[0064] The process in the mainframe 101 establishes a route to the data stored externally through each interface under the control of an arbitrary operating system such as Hitachi's VOS3 (virtual-storage operating system 3) for supporting the channel interface, while the process in the host for the open system establishes a route to the externally-stored data through each interface under the control of an arbitrary operating system such as UNIX (a registered trade mark owned by X/Open in U.S.A. and other countries) for supporting the SCSI.

[0065]FIG. 3 is a diagram showing a configuration of the disk controller A 104.

[0066] The disk controller A 104 includes a MPU 302 for executing a control system process 307 of the disk controller, a memory 301, a host data transfer device 303, a disk/cache device 304, an inter-I/O subsystem data transfer device 305, a data transfer device 306 and a bus 308 for connecting these devices.

[0067] The control system process 307 operates in a multitask or multiprocessor environment.

[0068] The memory 301 includes various microprograms 312 and various data 313.

[0069] Especially, the disk controller A 104 has stored therein the local controller-connected data 314 and the remote controller-connected disk data 315, as described above with reference to FIG. 1.

[0070] The disk controller B 113 and the disk controller X 123 have a configuration similar to the disk controller A 104 and will not be described in detail.

[0071] The disk controller B 113 and the disk controller X 123, however, are not required to contain the local controller-connected disk data 314 and the remote controller-connected disk data 315.

[0072] The local controller-connected disk data 314 is the data indicating the connections of the controllers and the like, and stored in the memory 301 of the disk controller A 104. The local controller-connected disk data 314 exists as the data corresponding to each disk device.

[0073] The local controller-connected disk data 314 is shown in FIG. 4.

[0074] The device address is an identifier (ID) for discriminating a disk device to be read from or written into by a host computer such as the mainframe 101, and is the data also contained in the read/write request issued by the host computer such as the mainframe 101.

[0075] Local controller connection data 401 is the data indicating whether or not the disk drive corresponding to the controller-connected disk data 314 is actually connected to a controller.

[0076] A remote controller connection pointer 402 indicates whether or not the controller-connected disk data 314 is assigned to a disk drive connected to a remote controller.

[0077] In the case where the such data is assigned to a disk drive connected to a remote controller, the pointer indicates a corresponding remote controller-connected disk data 315. Otherwise, the pointer assumes a null value.

[0078] In the case where the remote controller connection pointer 402 is valid (i.e. in the case where the particular device address 400 is assigned to a disk device connected to a remote controller), it represents the state in which the local controller connection data 401 is not assigned.

[0079] In the case where the remote controller connection pointer 402 is invalid (i.e. in the case where the device address 400 is not assigned to a disk drive connected to a remote controller), on the other hand, the local controller connection data 401 may indicate the state of no-assignment.

[0080] In other words, the device address 400 may be assigned to neither a disk device connected to a local controller nor a disk device connected to a remote controller.

[0081] An attribute 403 is the data unique to a device including the interface, the function, the data format and the block length of the disk drive.

[0082] The local controller-connected disk data 315 shown in FIG. 5 is the data corresponding to a disk drive not directly connected to the disk controller A 104.

[0083] It follows therefore that the remote controller-connected disk data 315, on the other hand, is pointed to by any one of the local controller-connected disk data 314.

[0084] A connection controller address 500 represents the address of a controller connected with a disk device corresponding to the remote controller-connected disk data 315. According to this embodiment, the address of the disk controller B 113 is stored as the connection controller address 500.

[0085] A disk address 501 represents the address assigned in the controller actually connected to a corresponding disk drive.

[0086] The local controller-connected disk data 314 and the remote controller-connected disk data 315 are set from the service processor 109.

[0087] According to this embodiment, the mainframe 101 recognizes that the disk drive group B 114 (disks C and D) is also connected to the disk controller A 104 through the disk controller B 113, as shown in FIG. 6, taking advantage of the local controller-connected disk data 314 and the remote controller-connected disk data 315 shown in FIGS. 4 and 5.

[0088] This is because of the fact that the vacant address of disk drive available in the disk controller A 104 is assigned by the disk controller A 104 to a disk drive of the I/O subsystem for an open system.

[0089] Now, the back-up processing will be described with reference to FIGS. 1, 7 and 8.

[0090] Specifically, in FIG. 1 the back-up process 162 on the mainframe 101 causes the data in the disk device group B 114 of the open system of the processing system B to be backed up in the MT library system 116 through the disk controller A 104 and the mainframe 101 of the processing system A.

[0091] Conversely, the data backed up in the MT library system 116 is restored in the disk drive group B 114 of the open system of the processing system B through the mainframe 101 and the disk controller A 104 of the processing system A.

[0092] The back-up operation and the restoration described above are executed in response to a command from the mainframe 101.

[0093] First, an explanation will be given of the case in which the data in the disk drive group B 114 of the open system for the processing system B is backed up in the MT library system 116 through the disk controller A 104 and the mainframe 101 of the processing system A.

[0094] As already described above, the mainframe 101 has recognized that the disk drive group B 114 (disks C and D) are also connected to the disk drive A 104.

[0095] Therefore, the operation of the mainframe 101, which is simply to issue a read request to the disk controller A 104 and back up the received data in the MT library system 116, will not be described specifically.

[0096] In the case of backing up data into the MT library system 116, the mainframe 101 issues a read request to the disk controller A 104. The disk controller A 104 executes the process in accordance with the flowchart of FIG. 7 in response to a read request from the mainframe 101.

[0097] First, step 700 finds out a corresponding local controller-connected disk data 314 from the address of the disk drive designated in the read request.

[0098] Step 701 checks whether the designated disk drive is connected to the disk controller A 104 or not.

[0099] In the case where the disk drive is connected to the disk controller A 104, step 702 reads the corresponding data from the particular disk drive.

[0100] In the case where the disk drive is not connected to the disk controller A104, in contrast, step 703 checks whether the designated disk drive is connected to a remote disk controller (disk controller B 113). In other words, it checks whether the remote controller connection pointer 402 assumes a null value.

[0101] In the case where the check result shows that the remote controller connection pointer 402 assumes a null value indicating that the designated disk drive is not connected to the remote disk controller, an error is reported in step 704.

[0102] The operation specifically related to the invention is represented by step 705 and subsequent steps executed in the case where a designated disk drive is connected to a remote disk controller (disk controller B 113).

[0103] First, in the case where the check result shows that the remote controller connection pointer 402 does not assume the null value indicating that the designated disk drive is connected to a remote disk controller, step 705 finds out the remote controller-connected disk data 315 corresponding to the designated disk drive based on the remote controller connection pointer 402. Then, the address of the disk controller (disk controller B 113) actually connected with the designated disk drive and the address of the disk drive in the disk drive group B connected to the particular disk controller B 113 are acquired on the basis of the remote controller-connected disk data 315 found as above.

[0104] Then, step 706 converts the address of the data to be read which has been received in the read request into the format of the disk drive connected to the disk controller B 113.

[0105] In a read/write request from the mainframe 101, the address of data to be read or written is normally designated by the cylinder number, the head number and the record number according to the CKD format.

[0106] The record address expressed by the cylinder number, the head number and the record number will hereinafter be called CCHHR.

[0107] The disk drive connected to the disk controller B 113, on the other hand, has an access interface designated by LBA (logical block address) in accordance with the FBA format.

[0108] Consequently, step 706 converts the access address of the data to be read from CKD format to FBA format.

[0109] The conversion formula is given, for example, by

LBA=(CC×number of heads+HH)×track length+record number×record length

[0110] According to this embodiment, the disk controller A 104 and the disk controller B 113 may have the same interface, in which case the conversion of the input/output interface format is not required.

[0111] Step 707 issues a request to the disk controller B 113 to read the data from the area of the corresponding disk drive calculated in step 706.

[0112] Step 708 waits for the arrival of the requested data from the disk controller B 113.

[0113] Step 709 sends the data received from the disk controller B 113 to the main frame 101 thereby to complete the process.

[0114] The disk controller B 113 simply reads the data requested by the disk controller A 104 from a disk drive, and sends it to the disk controller A 104. This process, therefore, is not described specifically in the processing flow.

[0115] Next, an explanation will be given of a case in which data backed up in the MT library system 116 is restored by the restore process 164 on the mainframe 101 in the disk drive group B 114 of the open system of the processing system B through the disk controller A 104 and the mainframe 101 of the processing system A.

[0116] As described already above, the mainframe 101 has recognized that the disk drive group B 113 (disks C and D) are also connected to the disk controller A 104.

[0117] Therefore, no explanation will be given of the operation of the mainframe 101 which is simply to issue a write request to the disk controller A 104 to write the data read from the MT library system 116.

[0118] Upon receipt of a write request from the mainframe 101, the disk controller A 104 executes the process in accordance with the flowchart of FIG. 8.

[0119] In the processing flow of FIG. 8, steps 800 to 801, 803 to 806 are similar to steps 700 to 701, 703 to 706 in FIG. 7, respectively, and therefore will not be explained. Also, step 802 is normally the write operation, since the request from the mainframe 101 is a write request. Only the parts different from FIG. 7 will be described below.

[0120] Step 807 issues a request to the disk controller B 113 to write data in the area of the corresponding disk drive calculated in step 807.

[0121] Next, in step 808, the write data is received from the mainframe 101 and sent to the disk controller B 113.

[0122] Then, step 809 waits for a report on the completion of the write request from the disk controller B 113, and upon receipt of the completion report, sends it to the mainframe 101 thereby to complete the process.

[0123] The disk controller B 113 simply reads the data requested by the disk controller A 104 from the corresponding disk drive and sends it to the disk controller A 104. The related processing flow, therefore, is not shown specifically.

[0124] The foregoing description concerns a system for backing up data of the disk drive group B 114 of the open system of the processing system B by the processing system A. As another embodiment, a heterogeneous I/O subsystem can be configured in which only the disk controller B and the disk drive group B are connected to the processing system A and the mainframe is connected with two I/O subsystems having different interfaces. In such a case, three or more instead of two I/O subsystems can be connected.

[0125] The above-mentioned embodiment permits data to be backed up between I/O subsystems having different access interfaces.

[0126] As a result, data stored in an I/O subsystem for an open system can be backed up into an I/O subsystem for the mainframe.

[0127] Also, the back-up mechanism of the mainframe includes a large-capacity, high-performance and high-reliability MT library system. The data of the I/O subsystem for an open system, therefore, can be backed up by a mainframe back-up mechanism high in performance and reliability.

[0128] Further, different I/O subsystems can be connected to the mainframe. 

1. A heterogeneous computer system comprising: a first host computer; a first I/O subsystem connected by an interface of variable-length record format to said first host computer and including at least an external memory; a second host computer; a second I/O subsystem connected to said second host computer by an interface of fixed-length record format; and a communication unit for connecting said first I/O subsystem and said second I/O subsystem; wherein said first I/O subsystem includes a table for storing a device address of an external memory, data indicating one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a unit address of said external memory in said second I/O subsystem when said unit address is assigned to the external memory of said second I/O subsystem, and means for receiving from said first host computer a read/write request conforming with said interface of variable-length record format including the address of the external memory to be read from or written into, and upon decision, with reference to said table, that said address of said external memory included in said first read/write request is assigned to the external memory included in said second I/O subsystem, converting said read/write request into a read/write request conforming with said interface of fixed-length record format and sending said second read/write request to said second I/O subsystem.
 2. A heterogeneous computer system comprising: a first host computer; a first I/O subsystem connected by an interface of variable-length record format to said first host computer and including at least one external memory; a second host computer; a second I/O subsystem connected to said second host computer by an interface of fixed-length record format; and a communication mechanism for connecting said first I/O subsystem and said second I/O subsystem; wherein said first host computer includes means for issuing to said first I/O subsystem a read request conforming with said interface of variable-length record format including the address of the external memory from which data is to be read, and backing up the data received from said first I/O subsystem in said back-up system; wherein said first I/O subsystem includes a table for storing a device address of an external memory, data indicating one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said unit address is assigned to the external memory of said second I/O subsystem, means for receiving from said first host computer a read request conforming with said interface of variable-length record format including the address of the external memory to be read from, and upon decision, with reference to said table, that said address of said external memory included in said first read request is assigned to the external memory included in said second I/O subsystem with reference to said table, converting said read request into a second read request conforming with said interface of fixed-length record format, sending said second read request to said second I/O subsystem, and sending the data received from said second I/O subsystem to said first host computer, means for backing up said data received by said first host computer in said back-up system.
 3. A heterogeneous computer system comprising: a first host computer; a first I/O subsystem connected by an interface of variable-length record format to said first host computer and including at least an external memory; a second host computer; a second I/O subsystem connected to said second host computer by an interface of fixed-length record format; and a communication unit for connecting said first I/O subsystem and said second I/O subsystem; wherein said first host computer includes means for issuing to said first I/O subsystem a write request conforming with said interface of variable-length record format including the address of the external memory to be written into, and sending the data read from said back-up system to said first I/O subsystem; wherein said first I/O subsystem includes a table for storing a device address of an external memory, data indicating one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said device address is assigned to the external memory of said second I/O subsystem, means for receiving from said first host computer a write request conforming with said interface of variable-length record format including the address of the external memory to be written into, and upon decision, with reference to said table, that said address of said external memory included in said first write request is assigned to the external memory included in said second I/O subsystem with reference to said table, converting said write request into a second write request conforming with said interface of fixed-length record format, sending said second write request to said second I/O subsystem, and sending the data received from said first host computer to said second I/o subsystem.
 4. A heterogeneous input/output system for use with a host computer connected thereto, comprising: a first I/O subsystem including at least an external memory, and a second I/O subsystem connected to said first I/O subsystem and including at least an external memory; wherein said first I/O subsystem includes a table for storing a device address for an external memory, data indicating one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said device address is assigned to the external memory of said second I/O subsystem, and means for receiving a read/write request from said host computer designating an address of the external memory to be read from or written into, and sending said read/write request to said second I/O subsystem, upon decision, with reference to said table, that said address of said external memory designated in said read/write request is assigned to the external memory included in said second I/O subsystem.
 5. A heterogeneous input/output system for use with a host computer connected thereto, comprising: a first I/O subsystem having an interface of variable-length record format and including at least an external memory, and a second I/O subsystem having an interface of fixed-length record format and including at least an external memory, and a communication unit for connecting said first I/O subsystem and said second I/O subsystem; wherein said first I/O subsystem includes a table for storing a device address of an external memory, data indicating one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said device address is assigned to the external memory of said second I/O subsystem, and means for receiving a read/write request from said host computer designating an address of the external memory to be read from or written into, and upon decision, with reference to said table, that said address of said external memory designated in said read/write request is assigned to the external memory included in said second I/O subsystem, converting said read/write request into a read/write request conforming with said fixed-length record format and sending said read/write request to said second I/O subsystem.
 6. A method of accessing an external memory for a heterogeneous computer system comprising a first host computer, a first I/O subsystem connected by an interface of variable-length record format to said first host computer and including at least an external memory, a second host computer, a second I/o subsystem connected to said second host computer by an interface of fixed-length record format and including at least an external memory, and a communication unit for connecting said first I/O subsystem and said second I/O subsystem, said method comprising the steps of: storing in the internal table of said first I/O subsystem a device address of an external memory, data indicating the external memory of that one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said device address is assigned to the external memory of said second I/O subsystem; and said first I/O subsystem receiving from said first host computer a read/write request conforming with said interface of variable-length record format including the address of said external memory to be read from or written into and deciding, with reference to said table, whether the address of the external memory included in said read/write request is assigned to the external memory included in said second I/O subsystem; and converting said read/write request into a read/write request conforming with the interface of fixed-length record format and sending said second read/write request to said second I/o subsystem in the case where said address of said external memory is assigned to said external memory included in said second I/O subsystem.
 7. A method of backing up the data in a heterogeneous computer system comprising a first host computer, a first I/O subsystem connected by an interface of variable-length record format to said first host computer and including at least an external memory, a back-up system connected to said first host computer, a second host computer, a second I/O subsystem connected to said second host computer by an interface of fixed-length record format and including at least one external memory, and a communication unit for connecting said first I/O subsystem and said second I/O subsystem, said first host computer including means for issuing a read request to said first I/O subsystem and backing up the data received from said first I/O subsystem in said back-up system, said method comprising the steps of: storing in the internal table of said first I/O subsystem a device address of an external memory, data indicating the external memory of that one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said first device address is assigned to the external memory of said second I/O subsystem; and said first I/O subsystem receiving from said first host computer a read request conforming with said interface of variable-length record format including the address of said external memory to be read from and deciding, with reference to said table, whether the address of the external memory included in said read request is assigned to the external memory included in said second I/O subsystem; converting said read request into a read request conforming with the interface of fixed-length record format and sending said second read request to said second I/O subsystem in the case where said address of said external memory is assigned to said external memory included in said second I/O subsystem; said first I/O subsystem receiving the read data from said second I/O subsystem, and sending said received read data to said first host computer; and backing up the data received by said first host computer in said back-up system.
 8. A method of restoring the back-up data in a heterogeneous computer system comprising a first host computer, a first I/O subsystem connected by an interface of variable-length record format to said first host computer and including at least an external memory, a back-up system connected to said first host computer, a second host computer, a second I/O subsystem connected to said second host computer by an interface of fixed-length record format and including at least one external memory, and a communication unit for connecting said first I/O subsystem and said second I/O subsystem, said first host computer including means for issuing a write request to said first I/O subsystem and sending the data read from said back-up system to said first I/O subsystem, said method comprising the steps of: storing in the internal table of said first I/O subsystem a device address of an external memory, data indicating the external memory of that one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said device address is assigned to the external memory of said second I/O subsystem; and said second I/O subsystem receiving from said first host computer a write request conforming with said interface of variable-length record format including the address of an external memory to be written into and deciding, with reference to said table, whether the external memory address included in said write request is assigned to the external memory included in said second I/O subsystem; converting said write request into a write request conforming with the interface of fixed-length record format and sending said second write request to said second I/O subsystem in the case where said external memory address is assigned to said external memory included in said second I/O subsystem; and said first I/O subsystem sending the data read from said back-up system and received from said first host computer to said second I/O subsystem.
 9. A method of accessing an external memory in a heterogeneous input/output system for use with a host computer connected thereto, comprising a first I/O subsystem including at least an external memory, and a second I/O subsystem connected to said first I/O subsystem and including at least an external memory, said method comprising the steps of: storing in the internal table of said first I/O subsystem a device address of an external memory, data indicating one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said first device address is assigned to the external memory of said second I/O subsystem, said first I/O subsystem receiving from said host computer a read/write request designating the address of the external memory to be read from or written into and deciding, with reference to said table, whether said designated external memory address is assigned to the external memory included in said second I/O subsystem, and sending said read/write request to said second I/O subsystem in the case where said designated external memory address is assigned to the external memory included in said second I/O subsystem.
 10. A method of accessing an external memory in a heterogeneous input/output system for use with a host computer connected thereto, comprising a first I/O subsystem having an interface of variable-length record format and including at least an external memory, a second I/O subsystem having an interface of fixed-length record format and including at least an external memory, and a communication unit for connecting said first I/O subsystem and said second I/O subsystem, said method comprising the steps of: storing in the internal table of said first I/O subsystem a device address of an external memory, data indicating one of said first I/O subsystem and said second I/O subsystem to which said device address is assigned, and a device address of said external memory in said second I/O subsystem in the case where said first device address is assigned to the external memory of said second I/O subsystem, said first I/O subsystem receiving from said host computer a read/write request conforming with said interface of variable-length record format including the address of an external memory to be read from or written into, and deciding, with reference to said table, whether the external memory address included in said read/write request is assigned to the external memory included in said second I/O subsystem, and converting said read/write request into a second read/write request conforming with said interface of fixed-length record format and sending said second read/write request to said second I/O subsystem in the case where said external memory address is assigned to the external memory included in said second I/O subsystem. 